Sponsored Story

Application Performance Monitoring: come tenere sotto controllo le prestazioni

La complessità delle moderne infrastrutture IT rende difficile garantire ottimizzazioni e livelli di prestazioni elevati senza ricorrere a specifici strumenti di controllo. Vediamo cosa sono i tool APM e perché sono utili per la sicurezza e il miglioramento dei servizi digitali

Pubblicato il 06 Feb 2023

Immagine di fizkes da Shutterstock

L’erogazione dei servizi applicativi attraverso lunghe catene di processi distribuiti, sistemi on premise e in Cloud non è alla portata degli strumenti di monitoraggio e gestione tradizionali, ma richiede approcci e strumenti specifici oltre a molta esperienza nella gestione. Con l’Application Performance Monitoring si possono controllare le prestazioni applicative in tempo reale, sia online e sia attraverso una connessione in locale. Questi strumenti assicurano visibilità sui dati più significativi, per mantenere alti i livelli di User Experience, oltre a migliorare la security e ridurre i costi di gestione attraverso un utilizzo ottimale delle risorse disponibili. Un tema che qui affrontiamo con l’aiuto dell’esperto Vittorino Aprile, Sales Director Business Unit Infrastructure di Criticalcase.

Perché serve l’Application Performance Monitoring

Cosa porta oggi le aziende a considerare l’APM? «Nella nostra esperienza come multicloud Solution Provider – spiega Aprile – vediamo nascere l’esigenza di dotarsi di queste soluzioni soprattutto in occasione di significativi aggiornamenti alle infrastrutture IT e applicative. Può trattarsi dell’adozione di servizi di Cloud privato, di nuove CPU o sistemi storage. In altri casi, il motivo è l’entrata in produzione di un portale di eCommerce, di un nuovo software gestionale o di un CRM erogato in modalità SaaS, che si accompagna con i problemi di prestazioni».

L’Application Performance Monitoring è un prerequisito per poter gestire in modo ottimale le infrastrutture IT: «Il monitoraggio aiuta a capire le criticità nei sistemi, nelle applicazioni o nella loro gestione e, quindi, a intervenire in modo mirato per ottenere le prestazioni richieste», precisa Aprile. A volte un semplice intervento di gestione può fare la differenza: «Per esempio, passando dal backup completo a quello incrementale, o spostando le fasce orarie d’esecuzione per evitare le conseguenze sulle prestazioni».

Inoltre, poiché molti attacchi di cybersecurity sono accompagnati dal “sequestro” più o meno rilevante delle risorse applicative, l’Application Performance Monitoring aiuta a rilevare in tempo reale eventi pericolosi e a prendere contromisure prima che creino interruzioni dei servizi.

Dal monitoraggio delle performance all’ottimizzazione dei servizi digitali

Il monitoraggio delle performance è il punto di partenza per la risoluzione di un gran numero di problemi, per capire qual è lo stato dei servizi IT e confrontarlo con i requisiti e gli obiettivi da raggiungere. «Con i dati si alimentano i KPI relativi alle prestazioni sui quali lavorare per ottenere dei miglioramenti attraverso l’applicazione delle best practice all’infrastruttura e alla gestione».

La velocità di un’applicazione dipende dal suo disegno, dai plug-in che usa e dalla connettività. «Un tema ricorrente riguarda i colli di bottiglia creati dalle applicazioni monolitiche – precisa il manager -. Problemi che si affrontano spacchettando il software esistente tra front-end, back-end e database, quindi portando le singole istanze su server o servizi indipendenti. La scalabilità così ottenuta è ulteriormente migliorabile con l’aggiunta, per esempio, di un bilanciatore di carico oppure di database in cluster».

Nei contesti geograficamente distribuiti, la connettività di rete incide fortemente sulle prestazioni. Le scelte infrastrutturali possono essere molto diverse tra imprese che operano in Italia, in Europa o in continenti dove esistono limitazioni alla connettività Internet e dal monitoraggio si può comprendere come adattare l’IT alla posizione geografica dei siti.

Migliorare le prestazioni e la User Experience

Con l’Application Performance Monitoring si possono evidenziare molte criticità lato utente prima che vengano segnalate dagli interessati e ottenere i dati utili per migliorare la User Experience. «Per esempio, per capire se l’erogazione di contenuti interattivi via Web può beneficiare dei servizi content delivery network (CDN) oppure mirati a ottimizzare le immagini o lo streaming video», chiosa Aprile.

Il monitoraggio applicativo consente di evidenziare in dettaglio i rapporti tra le diverse componenti software e di servizio: «Questo permette di comprendere come è stata scritta l’applicazione e intervenire per renderla performante – precisa Aprile –, per esempio, rivedendo le modalità con cui comunica con i front end oppure fa le query sui database».

I dati che derivano dal monitoraggio vanno a costituire una base d’informazione molto utile per successive analisi, per individuare correlazioni significative o alimentare sistemi Intelligenza Artificiale e Machine Learning con cui ottenere indicazioni di sintesi sulle cause dei problemi ed, eventualmente, ottenere consigli per la risoluzione, in base alle esperienze precedenti.

Il valore dell’esperienza “sul campo”

Per migliorare insieme le prestazioni, la sicurezza e la resilienza dei servizi digitali è importante riuscire a realizzare il monitoraggio end-to-end dei sistemi fino all’utente finale. «È dal controllo congiunto di applicazioni, nodi d’elaborazione, storage e connettività che si ricavano i dati per individuare in tempo reale i picchi di carico e gli altri problemi che rallentano l’IT – continua il manager -. Per riuscire a farlo negli ambienti dei nostri clienti, abbiamo dovuto acquisire esperienza su molte piattaforme commerciali di Performance Monitoring, oltre che sulle sonde che servono per avere visibilità sulle componenti applicative».

Poiché i dati in gioco sono molti, è importante saper usare insieme i diversi tool e impiegarli con metodo. «Nella nostra realtà di lavoro usiamo il motore open source Elasticsearch per collezionare i dati d’utilizzo relativi a CPU, RAM, VM, I/O storage, banda di rete e così via. Usiamo, quindi, dei cruscotti per ottenere semplici indicazioni a semaforo, così come sistemi di analisi più sofisticati, per ricavare correlazioni, trend, reportistica, capire cosa rallenta una query o il traffico in rete».

I benefici per la continuità operativa

Tra i progetti più recenti seguiti dalla Business Unit Infrastructure di Criticalcase, Aprile cita il caso di un’azienda italiana che realizza un software impiegato nel controllo delle attrezzature d’analisi del sangue presso 180 centri di donazione e ospedali. «Un servizio sanitario che doveva essere reso mission critical per far fronte all’imprevedibilità delle emergenze». L’infrastruttura del software, in origine monolitica, è stata riprogettata per offrire maggiori performance e garantire l’uptime del 100% attraverso una parallelizzazione dei servizi in Cloud erogati sia dal data center di Criticalcase sia da quello di AWS. «Un bilanciatore esterno e una particolare configurazione di rete hanno permesso di garantire la massima continuità dei servizi senza richiedere cambiamenti alle configurazioni periferiche delle VPN che avrebbero comportato oneri tecnici non gestibili a livello periferico».

Un secondo progetto ha riguardato il Consorzio Pianura Bergamasca. «L’Ente ci ha coinvolto nel progetto di esternalizzazione dei propri sistemi informativi verso il nostro datacenter – conclude Aprile -. Il passaggio ha garantito una maggiore sicurezza dei dati e prestazioni migliori del 30-40% attraverso la connettività dedicata e il porting applicativo sull’hardware aggiornato e gestito da Criticalcase. Per il successo dei progetti, spesso contano la nostra capacità di solution provider e i nostri servizi, ma anche il nostro essere agnostici nel fornire supporto al cliente per l’utilizzo del Cloud e dei servizi di terze parti».

New call-to-action

Valuta la qualità di questo articolo

La tua opinione è importante per noi!

Articoli correlati

Articolo 1 di 3